关于 Rocky Linux 9 新特性,请参考: Rocky Linux 9.4 现已发布啦
温馨提醒
升级之前请做好数据备份及配置。
升级系统
# 安装 epel 源
dnf -y install epel-release
# 更新系统至最新版
dnf -y update
# 重启系统
reboot
# 安装 rpmconf 和 yum-utils
dnf -y install rpmconf yum-utils
# 执行 rpmconf,如果出现提示信息,请输入 Y 和回车继续,如果没提示继续。
rpmconf -a
# 安装 rocky-release 包
rpm -e --nodeps `rpm -qa|grep rocky-release`
rpm -e --nodeps `rpm -qa|grep rocky-gpg-keys`
rpm -e --nodeps `rpm -qa|grep rocky-repos`
rpm -ivh --nodeps --force https://mirrors.aliyun.com/rockylinux/9/BaseOS/x86_64/os/Packages/r/rocky-gpg-keys-9.1-1.11.el9.noarch.rpm
rpm -ivh --nodeps --force https://mirrors.aliyun.com/rockylinux/9/BaseOS/x86_64/os/Packages/r/rocky-release-9.1-1.11.el9.noarch.rpm
rpm -ivh --nodeps --force https://mirrors.aliyun.com/rockylinux/9/BaseOS/x86_64/os/Packages/r/rocky-repos-9.1-1.11.el9.noarch.rpm
dnf clean all
# 升级 Rocky Linux 9
dnf -y --releasever=9 --allowerasing --setopt=deltarpm=false distro-sync
# 如出现以下报错,请卸载 conflicts with file from package 后面的包名,如果没报错接着执行下一步
错误: 事物测试失败:
file /usr/share/redhat-logos from install of rocky-logos-86.2-1.el8.x86_64 conflicts with file from package rocky-logos-86.2-1.el8.x86_64
rpm -e --nodeps rocky-logos-86.2-1.el8.x86_64
# 卸载完后重新执行下面的命令
dnf clean all
dnf -y --releasever=9 --allowerasing --setopt=deltarpm=false distro-sync
# 重建 rpm 数据库,出现警告忽略。
rpm --rebuilddb
# 安装新内核
dnf -y install kernel
dnf -y install kernel-core
dnf -y install shim
# 安装基础环境
dnf group install minimal-environment -y
# 安装 rpmconf 和 yum-utils
dnf -y install rpmconf yum-utils
# 执行 rpmconf,根据提示一直输入 Y 和回车即可
rpmconf -a
# 设置采用最新内核引导
export grubcfg=`find /boot/ -name rocky`
grub2-mkconfig -o $grubcfg/grub.cfg
# 更新系统
dnf -y update
# 重启系统
reboot
卸载旧内核
具体内核卸载参考: Rocky Linux 9 内核升级至 6.0 – Rocky Linux
相关错误处理
# 禁用无效 module 处理
# 问题 1: 冲突的请求
# \- 没有提供模块 module(platform:el8) 所需要的 mariadb:10.3:8060020220913075833:d63f516d.x86\_64
dnf module disable mariadb:10.3:8060020220913075833 python27:2.7:8070020221108111144 python36:3.6:8050020211109130820 -y